草庐IT

c++ - std::string::iterator 偏移并返回

全部标签

Ruby 没有将 Fixnum 隐式转换为 String (TypeError)

我正在尝试回答ChrisPine的“学习编程”一书中的以下问题:Leapyears.Writeaprogramthatasksforastartingyearandanendingyearandthenputsalltheleapyearsbetweenthem(andincludingthem,iftheyarealsoleapyears).Leapyearsareyearsdivisibleby4(like1984and2004).However,yearsdivisibleby100arenotleapyears(suchas1800and1900)unlesstheyareal

ruby 1.9 : Convert byte array to string with multibyte UTF-8 characters

我正试图在Ruby中找到一种方法来获取UTF-8字节数组并将其转换回字符串。在irb(Ruby1.9.2预览版3)中,我可以从UTF-8字符串创建正确的字节数组:ruby-1.9.2-preview3>'Café'.bytes.to_a=>[67,97,102,195,169]但是,我找不到从字节返回数组的方法。我尝试将Array.pack与U*选项一起使用,但这不适用于多字节字符。ruby-1.9.2-preview3>[67,97,102,195,169].pack('U*')=>"Café"有没有人知道如何将包含多字节字符的UTF-8字节数组转换回字符串?谢谢。

ruby - 返回 ruby​​ 中字符串中所有出现的字符的索引

我正在尝试使用Ruby将索引返回到字符串中所有出现的特定字符。示例字符串是"a#asg#sdfg#d##"并且在搜索时预期返回是[1,5,10,12,13]#个字符。以下代码可以完成这项工作,但必须有更简单的方法吗?defoccurances(line)index=0all_index=[]line.each_bytedo|x|ifx=='#'[0]thenall_index 最佳答案 s="a#asg#sdfg#d##"a=(0...s.length).find_all{|i|s[i,1]=='#'}

ruby - 在 Ruby 中设置时区偏移

Ruby中的默认时区偏移显然是-0800。我想将我的设置为-0500。我该怎么做? 最佳答案 设置TZ环境变量...$ruby-e'putsTime.now'SatJan1520:49:10-08002011$TZ=UTCruby-e'putsTime.now'SunJan1604:49:20+00002011Ruby从主机操作系统获取时区信息。最直接的是,它使用C99和Posix指定的C库API。该API的实现是系统特定的,在我的Mac上这意味着它会引用/etc/localtime除非有TZ环境变量。在Linux上大致相同。

ruby - 为什么.all?在空数组上返回 true?

我想使用Ruby评估数组中的所有项,如果它们都通过条件测试则返回true。我可以使用例如array.all?{|值|值==2}所以:>array=[2,2]>array.all?{|value|value==2}=>true>array=[2,3]>array.all?{|value|value==2}=>false太棒了!但是,为什么一个空数组可以通过这个测试呢?>array=[]>array.all?{|value|value==2}=>true这不应该返回false吗?如果我需要它返回false,我应该如何修改方法? 最佳答案

ruby-on-rails - 为什么 Ruby "script/generate"返回 "No such file or directory"?

我在使用script/generate时遇到问题。我正在关注treebasednavigation教程,它说使用script/plugininstallgit://github.com/rails/acts_as_tree.git或script/generatenifty_layout。我不断得到:Nosuchfileordirectory--script/plugin我试过这些变体:script/generatenifty_layoutrailsgeneratenifty_layoutrubyscript/generatenifty_layoutrubygeneratenifty_l

ruby-on-rails - 如何在 Rails 中获取 utc 偏移量?

我需要指定时区的utc偏移量。 最佳答案 如果你需要考虑夏令时,你可以使用这样的东西:Time.now.in_time_zone('America/New_York').utc_offset 关于ruby-on-rails-如何在Rails中获取utc偏移量?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/5487876/

ruby-on-rails - ruby 正则表达式错误 : incompatible encoding regexp match (ASCII-8BIT regexp with UTF-8 string)

我遇到了两个错误,都与编码有关并且都相关。我在启动WEBrick时遇到的第一个错误(技术上是警告):/Users/USERNAME/example/config/initializers/bb-ruby.rb:54:warning:invalidUnicodeProperty\P:/\:\-?\P/它所指的行是:/\:\-?\P/,这只是一些正则表达式,最终是这个block的一部分:@@tags['Razzing']=[/\:\-?\P/,'','Razzing',':P',:razzing]然后,我在解析一些字符串时也得到了以下错误(大概是由于同一行)...Encoding::Com

ruby 使用 array.map(& :methodname) for hash key strings rather than methodname 中的 "&:methodname"快捷方式

大多数ruby​​开发人员都知道如何通过执行以下操作来节省几次击键:array.map(&:methodname)而不是array.map{|x|x.methodname}有什么方法可以应用类似的&:methodname快捷方式来调用哈希数组上的“方法”(通过键调用的值)?在我的例子中,它的JSONapi结果以60个批处理作为源自JSON的散列数组返回。我试着这样做:array.map(&:"keyname")但没有成功,抛出一个NoMethodError并说Hash没有'keyname'方法,我想这是合理的。我想知道是否有一些Elixir可以模拟这个&:...ruby专家已经制定出的

ruby-on-rails - 如何引发 ActiveRecord::Rollback 异常并一起返回值?

我有一个使用acts_as_nested_set分支的模型,并且我向模型添加了一个方法来保存模型并将节点移动到一个事务中的集合中。此方法调用验证方法以确保移动有效,它返回true或false。如果验证失败,我希望我的保存方法引发ActiveRecord::Rollback以回滚事务,但也向调用者返回false。我的模型是这样的:classCategory:destroy,:scope=>:journaldefsave_with_place_in_set(parent_id)Category.transactiondoreturnfalseif!save_without_place_in